package org.dromara.shopping.domain;

import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serial;

/**
 * 小程序用户（微信、抖音）对象 wx_user
 *
 * @author Mr.Zhou
 * @date 2024-10-21
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("wx_user")
public class WxUser extends BaseEntity {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     *
     */
    @TableId(value = "id",type = IdType.AUTO)
    private Integer id;

    /**
     * 用户编号
     */
    private String userNo;

    /**
     * 昵称
     */
    private String nickName;

    /**
     * 真实姓名
     */
    private String realName;

    /**
     * 手机号
     */
    private String phoneNum;

    /**
     * 来自平台 微信小程序wx
     */
    private String platform;

    /**
     * 会员支付密码
     */
    private String payPwd;

    /**
     * 支付密码输入错误次数
     */
    private Integer payPwdErrorCount;

    /**
     * 最后输入错误的时间
     */
    private Date lastPwdErrorTime;

    /**
     * 头像地址
     */
    private String faceUrl;

    /**
     * 性别
     */
    private Integer sex;

    /**
     * 所处省份
     */
    private String province;

    /**
     * 所处城市
     */
    private String city;

    /**
     * 所在区县
     */
    private String district;

    /**
     * wx session_key
     */
    private String sessionKey;

    /**
     * 最后一次的登录时间
     */
    private Date lastActiveTime;

    /**
     * 最后的登录ip
     */
    private String lastLoginIp;

    /**
     * 身份验证token
     */
    private String token;

    /**
     * 微信的openid
     */
    private String openId;

    /**
     * 微信的unionid
     */
    private String unionId;

    /**
     * vip等级
     */
    private Long vipLevel;

    /**
     * 用户类型 0 - 普通用户  1 - 商家用户
     */
    private Integer userType;

    /**
     * 是否是平台管理员 0 - 否 1 - 是
     */
    private Integer isAdmin;

    /**
     * sysuser 表的id
     */
    private Integer sysUserId;

    /**
     * 绑定的商家id
     */
    private Integer merId;

    /**
     * 经度
     */
    private BigDecimal lng;

    /**
     * 纬度
     */
    private BigDecimal lat;

    /**
     * 是否是测试用户
     */
    private Long isTestUser;

    /**
     * 是否是新用户 0 - 老用户  1 - 新用户
     */
    private Integer isNewUser;

    /**
     * 邀请人id
     */
    private Integer agId;

    /**
     * 推广员id
     */
    private Integer promoterId;

    /**
     * 个人的二维码，分享邀请二维码
     */
    private String qrCode;

    /**
     * 是否关闭签到入口
     */
    private Integer isCloseSign;

    /**
     * 邀请新用户的数量
     */
    private Integer inviteUserCount;

    /**
     * 使用的邀请新用户的数量
     */
    private Integer payInviteUserCount;


}
